package com.eyedog.video.utils;

import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.Color;

//import com.library.common.utils.ImageLoaderUtil;
//import com.library.common.utils.RxUtil;
//import com.qiandw.R;
import com.eyedog.video.R;

import cn.bingoogolapple.qrcode.zxing.QRCodeEncoder;
import io.reactivex.Flowable;
import io.reactivex.disposables.Disposable;
import io.reactivex.functions.Consumer;
import io.reactivex.functions.Function;

public class QRCodeUtil
{
    public static void encodeQrCode(String content, int size)
    {
        QRCodeEncoder.syncEncodeQRCode(content, size);
    }

//    public static Disposable generateAppQr(final Context context, String url, final int size, final GenerateQRCodeListener listener)
//    {
//        return Flowable.just(url)
//                       .map(new Function<String, Bitmap>()
//                       {
//                           @Override
//                           public Bitmap apply(String s) throws Exception
//                           {
//                               return QRCodeEncoder.syncEncodeQRCode(s, size, Color.BLACK,
//                                                                     ImageLoaderUtil.drawable2Bitmap(
//                                                                             context.getResources()
//                                                                                     .getDrawable(
//                                                                                             R.mipmap.ic_launcher)));
//                           }
//                       })
//                       .compose(RxUtil.flowableTransformer())
//                       .subscribe(new Consumer<Bitmap>()
//                       {
//                           @Override
//                           public void accept(Bitmap bitmap) throws Exception
//                           {
//                               if (listener != null)
//                               {
//                                   listener.onGenerateCode(bitmap);
//                               }
//                           }
//                       }, new Consumer<Throwable>()
//                       {
//                           @Override
//                           public void accept(Throwable throwable) throws Exception
//                           {
//                               if (listener != null)
//                               {
//                                   listener.onGenerateError(throwable);
//                               }
//                           }
//                       });
//    }
//
//    public static Disposable generateAppQr(Context context, String url, GenerateQRCodeListener listener)
//    {
//        return generateAppQr(context, url, 250, listener);
//    }

    public interface GenerateQRCodeListener
    {
        void onGenerateCode(Bitmap bitmap);

        void onGenerateError(Throwable throwable);
    }
}
